import json

import pandas as pd

# 这时我们就需要使用到 json_normalize() 方法将内嵌的数据完整的解析出来：
def parse_json():
    with open('nested_list.json','r') as fp:
        data = json.loads(fp.read())

    # 展平数据
    # json_normalize() 使用了参数 record_path 并设置为 ['students'] 用于展开内嵌的 JSON 数据 students。
    # 显示结果还没有包含 school_name 和 class 元素，如果需要展示出来可以使用 meta 参数来显示这些元数据：
    list = pd.json_normalize(data,record_path=['students'],meta=['school_name', 'class'])
    print(list)


def parse_json2():
    with open('nested_mix.json','r') as fp:
        data = json.loads(fp.read())
    list = pd.json_normalize(data,record_path=['students'],meta=['school_name', ['info','president'],['info','contacts','tel']])
    print(list)


if __name__ == '__main__':
    # parse_json()
    parse_json2()
